﻿
Partial Class Paginas_MantencionFiltros
    Inherits System.Web.UI.Page

#Region "Declaracion de Funciones y Procedimientos de pagina"
    Private Sub CargarInfoEventos()
        Dim objNegConv As New dllNegocio.NegEventos(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Dim myCollect As Collection
        Dim objEvento As New dllEntidades.clsEventos
        Try
            Me.HdnIdFiltroCargo.Value = "0"
            Me.HdnIdFiltroCiudad.Value = "0"
            Me.HdnIdFiltroEstadoCivil.Value = "0"
            Me.HdnIdFiltroRegion.Value = "0"
            myCollect = objNegConv.ListarEventos(Me.hdnIdEvento.Value.Trim, "", "0")
            If myCollect.Count > 0 Then
                objEvento = myCollect.Item(1)
                Me.lblEvento.Text = objEvento.Nombre
                Me.lblFecHoraIni.Text = objEvento.FechaHoraInicioPublicacion.ToString
                Me.lblFecHoraFin.Text = objEvento.FechaHoraFinPublicacion.ToString

                objEvento.Codigo = Me.hdnIdEvento.Value.Trim
                Dim objNegFiltro As New dllNegocio.NegFiltrosEventos(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
                Dim myCollect2 As Collection
                Dim objGeneric As New dllEntidades.clsObjGenericos
                Try
                    myCollect2 = objNegFiltro.ListarFiltroEventos(objEvento)
                    For x As Integer = 1 To myCollect2.Count
                        objGeneric = CType(myCollect2.Item(x), dllEntidades.clsObjGenericos)
                        Select Case objGeneric.Descripcion
                            Case "Cargo"
                                Me.HdnIdFiltroCargo.Value = objGeneric.Codigo
                                Me.ddlCargos.SelectedValue = objGeneric.Activo
                            Case "Ciudad"
                                Me.HdnIdFiltroCiudad.Value = objGeneric.Codigo
                                Me.ddlCiudad.SelectedValue = objGeneric.Activo
                            Case "EstadoCivil"
                                Me.HdnIdFiltroEstadoCivil.Value = objGeneric.Codigo
                                Me.ddlEstadoCivil.SelectedValue = objGeneric.Activo
                            Case "Region"
                                Me.HdnIdFiltroRegion.Value = objGeneric.Codigo
                                Me.ddlRegiones.SelectedValue = objGeneric.Activo
                        End Select
                    Next
                Catch ex As Exception
                Finally
                    objNegFiltro.Dispose()
                    objNegFiltro = Nothing
                    objGeneric.Dispose()
                    objGeneric = Nothing
                End Try
            End If
        Catch ex As Exception
        Finally
            objNegConv.Dispose()
            objNegConv = Nothing
            myCollect = Nothing
            objEvento.Dispose()
            objEvento = Nothing
        End Try
    End Sub

    Private Sub CargarCombos()
        Dim miCollectI As New Collection
        Dim miNegRegAdm As New dllNegocio.NegRegiones(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Try
            miCollectI = miNegRegAdm.ListaRegionesVigente()
            Me.ddlRegiones.DataSource = miCollectI
            Me.ddlRegiones.DataTextField = "Descripcion"
            Me.ddlRegiones.DataValueField = "Codigo"
            Me.ddlRegiones.DataBind()
            Me.ddlRegiones.Items.Insert(0, New ListItem("Todos", "0"))
        Catch ex As Exception
        Finally
            miCollectI = Nothing
            miNegRegAdm.Dispose()
            miNegRegAdm = Nothing
        End Try

        Dim miNegCiudm As New dllNegocio.NegCiudades(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Try
            miCollectI = miNegCiudm.ListaCiudadesVigente()
            Me.ddlCiudad.DataSource = miCollectI
            Me.ddlCiudad.DataTextField = "Descripcion"
            Me.ddlCiudad.DataValueField = "Codigo"
            Me.ddlCiudad.DataBind()
            Me.ddlCiudad.Items.Insert(0, New ListItem("Todos", "0"))
        Catch ex As Exception
        Finally
            miCollectI = Nothing
            miNegCiudm.Dispose()
            miNegCiudm = Nothing
        End Try

        Dim miNegCargodm As New dllNegocio.NegCargos(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Try
            miCollectI = miNegCargodm.ListaCargosVigente
            Me.ddlCargos.DataSource = miCollectI
            Me.ddlCargos.DataTextField = "Descripcion"
            Me.ddlCargos.DataValueField = "Codigo"
            Me.ddlCargos.DataBind()
            Me.ddlCargos.Items.Insert(0, New ListItem("Todos", "0"))
        Catch ex As Exception
        Finally
            miCollectI = Nothing
            miNegCargodm.Dispose()
            miNegCargodm = Nothing
        End Try

        Dim miNegEstadoCivildm As New dllNegocio.NegEstadoCivil(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Try
            miCollectI = miNegEstadoCivildm.ListaEstadosCivilesVigente()
            Me.ddlEstadoCivil.DataSource = miCollectI
            Me.ddlEstadoCivil.DataTextField = "Descripcion"
            Me.ddlEstadoCivil.DataValueField = "Codigo"
            Me.ddlEstadoCivil.DataBind()
            Me.ddlEstadoCivil.Items.Insert(0, New ListItem("Todos", "0"))
        Catch ex As Exception
        Finally
            miCollectI = Nothing
            miNegEstadoCivildm.Dispose()
            miNegEstadoCivildm = Nothing
        End Try
    End Sub

    Private Sub GuardarConvenioLugar()
        Dim objNeg As New dllNegocio.NegFiltrosEventos(System.Configuration.ConfigurationManager.AppSettings.Get("SPECBDD"))
        Dim objFiltro As New dllEntidades.clsFiltroEvento
        Dim objEvento As New dllEntidades.clsEventos
        Try
            objEvento.Codigo = Me.hdnIdEvento.Value.Trim
            Dim ResulGrabar As Boolean

            If Me.ddlCargos.SelectedValue.Trim <> "0" Then
                objFiltro.TipoFiltro = "Cargo"
                objFiltro.ValorFiltro = Me.ddlCargos.SelectedItem.Value.Trim
                If Me.HdnIdFiltroCargo.Value.Trim <> "0" Then
                    objFiltro.CodigoFiltro = Me.HdnIdFiltroCargo.Value.Trim
                    ResulGrabar = objNeg.ActualizarFiltroEventos(objEvento, objFiltro)
                Else
                    ResulGrabar = objNeg.GrabarFiltroEventos(objEvento, objFiltro)
                End If
            End If

            If Me.ddlCiudad.SelectedValue.Trim <> "0" Then
                objFiltro.TipoFiltro = "Ciudad"
                objFiltro.ValorFiltro = Me.ddlCiudad.SelectedItem.Value.Trim
                If Me.HdnIdFiltroCiudad.Value.Trim <> "0" Then
                    objFiltro.CodigoFiltro = Me.HdnIdFiltroCiudad.Value.Trim
                    ResulGrabar = objNeg.ActualizarFiltroEventos(objEvento, objFiltro)
                Else
                    ResulGrabar = objNeg.GrabarFiltroEventos(objEvento, objFiltro)
                End If
            End If

            If Me.ddlEstadoCivil.SelectedValue.Trim <> "0" Then
                objFiltro.TipoFiltro = "EstadoCivil"
                objFiltro.ValorFiltro = Me.ddlEstadoCivil.SelectedItem.Value.Trim
                If Me.HdnIdFiltroEstadoCivil.Value.Trim <> "0" Then
                    objFiltro.CodigoFiltro = Me.HdnIdFiltroEstadoCivil.Value.Trim
                    ResulGrabar = objNeg.ActualizarFiltroEventos(objEvento, objFiltro)
                Else
                    ResulGrabar = objNeg.GrabarFiltroEventos(objEvento, objFiltro)
                End If
            End If

            If Me.ddlRegiones.SelectedValue.Trim <> "0" Then
                objFiltro.TipoFiltro = "Region"
                objFiltro.ValorFiltro = Me.ddlRegiones.SelectedItem.Value.Trim
                If Me.HdnIdFiltroRegion.Value.Trim <> "0" Then
                    objFiltro.CodigoFiltro = Me.HdnIdFiltroRegion.Value.Trim
                    ResulGrabar = objNeg.ActualizarFiltroEventos(objEvento, objFiltro)
                Else
                    ResulGrabar = objNeg.GrabarFiltroEventos(objEvento, objFiltro)
                End If
            End If

            If ResulGrabar = True Then
                UtilidadesPagina.mensaje("el filtro de evento ah sido guardado correctamente", Me.Page)
            End If
        Catch ex As Exception
        Finally
            objNeg.Dispose()
            objFiltro.Dispose()
            objEvento.Dispose()
            objNeg = Nothing
            objFiltro = Nothing
            objEvento = Nothing
        End Try
    End Sub
#End Region

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            Me.hdnIdEvento.Value = Request.QueryString("EventoID")
            Call CargarInfoEventos()
            Call CargarCombos()
        End If
    End Sub

    Protected Sub btnVolver_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnVolver.Click
        Response.Redirect("MantenerEventos.aspx?EventoID=" & Me.hdnIdEvento.Value.Trim)
        Response.End()
    End Sub

    Protected Sub btnAgregar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAgregar.Click
        Call GuardarConvenioLugar()
    End Sub
End Class
